Method and device for messaging

ABSTRACT

A method and system are provided to transmit a message from a transmitting client to a primary receiving client via a server, which is also connected to a secondary receiving client. A message is sent from the transmitting client to the server. The message includes a first header indicative of an address of the primary receiving client and a second header indicative of at least one address of the secondary receiving client and the secondary header being indicative of only a single one of the at least one address. The message is then transmitted from the server to the primary receiving client and from the server to the secondary receiving client.

FIELD OF THE INVENTION

The present invention relates to a communication system and method ofusing such a system to send a message to multiple recipients in asession-based environment.

The invention has been developed primarily for use in internet protocol(IP) based third generation (3G) communication system, preferably by wayof modification to the present session initiation protocol (SIP) forsession-based communication. However, it will be appreciated that theinvention is not limited to use in this field.

BACKGROUND OF THE INVENTION

A communication system can be seen as a facility that enablescommunication between two or more entities such as user equipment and/orother nodes associated with the system. The communication may comprise,for example, communication of voice, data, multimedia and so on.

A communication system typically operates in accordance with a givenstandard or specification that sets out what the various elements of thesystem are permitted to do and how that should be achieved. For example,the standard or specification may define if the user, or more precisely,user equipment or terminal is provided with a circuit switched serviceand/or a packet switched service. Communication protocols and/orparameters to be used for the connection may also be defined. In otherwords, a specific set of “rules” on which the communication can be basedneeds to be defined to enable communication via the system.

Communication systems providing wireless communication for userterminals or other nodes are known. An example of the wireless systemsis a cellular network. In cellular systems, a base transceiver station(BTS) or similar access entity serves mobile stations (MS) or similaruser equipment (UE) via a wireless interface between these entities. Theoperation of the apparatus required for the communication can becontrolled by one or several control entities. The various controlentities may be interconnected. One or more gateway nodes may also beprovided for connecting the cellular network to other networks, such asto another cellular system or to a public switched telephone network(PSTN) and/or other communication networks such as an IP (InternetProtocol) and/or other packet switched networks. The communicationbetween the user equipment and the elements of the communication networkcan be based on an appropriate communication protocol such as thesession initiation protocol (SIP).

For example, in the current third generation (3G) multimedia networkarchitectures it is assumed that various servers are used for handlingdifferent functions. The SIP is implemented by means of an SIP proxyserver. A UE wanting to establish a session with another UE communicateswith the SIP proxy server by way of the air interface, and the SIPserver then establishes and maintains the required channel.

One difficulty with this arrangement is that if a user wants to use SIPas a basis for sending messages for a group of recipients (such as textmessages or data), the message must be sent multiple times from the userto the proxy server, and thence to each intended recipient individually.This consumes bandwidth between the user and the proxy server. Theproblem is exacerbated in a mobile telecommunications environment, wherethis link can be the air interface, where bandwidth is at a premium.

Another difficulty is that instant messaging under, for example SIP,does not presently provide an option for users to find out the status ofmessages they have sent.

SUMMARY OF THE INVENTION

Embodiments of the present invention aim to address one or more of theabove problems.

In a first aspect, the present invention provides a method oftransmitting a message from a transmitting client to a primary receivingclient and at least one secondary receiving client in a communicationssystem including a proxy server, the method including the steps of:

-   -   sending the message from the transmitting client to the proxy        server, the message including at least a first header indicative        of an address of the primary receiving client and at least one        secondary header indicative of an address of the at least one        secondary receiving client, the primary header being indicative        of only a single one of the addresses; and    -   transmitting the message from the proxy server to the primary        receiving client and from the proxy server to the at least one        secondary receiving client.

In one embodiment, each of the at least one secondary receiving headersis indicative of only a single address of a secondary receiving client.

In an alternative embodiment, the message includes only a singlesecondary receiving header indicative of addresses of the at least onesecondary receiving clients.

Preferably, the method further includes the steps of, in the proxyserver:

-   -   awaiting a response message from each of the receiving clients,        the response message being indicative of successful receipt of        the message;    -   determining, on the basis of any received response messages,        which of the receiving clients have received the message; and    -   sending a result message to the transmitting client, indicating        which of the receiving clients have received the message.

More preferably, the method preferably includes the step ofre-transmitting the message from the proxy server to any receivingclients that do not send a response message within a predetermined timeperiod after transmission of the message from the proxy server.

In a preferred embodiment, the method includes the steps of:

-   -   re-transmitting the message up to a predetermined number of        times; and    -   in the event that no response message is received, determining        that the message transmission was not successful;    -   wherein the result message indicates those receiving clients        that have not received the message.

In a particularly preferred embodiment, the communications system is atelecommunications network and the message is transmitted from thetransmitting client to the proxy server over an air interface within thetelecommunications network. Most preferably, the proxy server is an SIPproxy server and the message is an SIP message.

In a second aspect, the present invention provides a proxy server forreceiving a message sent from a transmitting client addressed to aprimary receiving client and at least one secondary receiving client ina communications system, the proxy server being configured to:

-   -   receive the message from the transmitting client, the message        including at least a first header indicative of an address of        the primary receiving client and at least one secondary header        indicative of an address of the at least one secondary receiving        client, the primary header being indicative of only a single one        of the addresses; and    -   transmit the message to the primary receiving client and to the        at least one secondary receiving client.

In one embodiment, each of the at least one secondary receiving headersis indicative of only a single address of a secondary receiving client.

In an alternative embodiment, the message includes only a singlesecondary receiving header indicative of addresses of the at least onesecondary receiving clients.

Preferably, the proxy server is configured to:

-   -   await a response message from each of the receiving clients, the        response message being indicative of successful receipt of the        message;    -   determine, on the basis of any received response messages, which        of the receiving clients have received the message; and    -   send a result message to the transmitting client, indicating        which of the receiving clients have received the message.

More preferably, the proxy server is configured to re-transmit themessage from the proxy server to any receiving clients that do not senda response message within a predetermined time period after transmissionof the message from the proxy server.

In a preferred embodiment, the proxy server is configured to:

-   -   re-transmit the message up to a predetermined number of times;        and    -   in the event that no response message is received, determine        that the message transmission was not successful;    -   wherein the result message indicates those receiving clients        that have not received the message.

Preferably, the communications system is a telecommunications networkand the message is transmitted from the transmitting client to the proxyserver over an air interface within the telecommunications network. Mostpreferably, the proxy server is an SIP proxy server and the message isan SIP message.

In a third aspect, the present invention provides a communication systemfor transmitting a message from a transmitting client to a primaryreceiving client and at least one secondary receiving client, thecommunications system including a proxy serve according to the secondaspect of the invention.

In a fourth aspect, the present invention provides user equipment fortransmitting a message to a primary receiving client and at least onesecondary receiving client in a communications system including a proxyserver, the user equipment being configured to:

-   -   send the message to the proxy server, the message including at        least a first header indicative of an address of the primary        receiving client and at least one secondary header indicative of        an address of the at least one secondary receiving client, the        primary header being indicative of only a single one of the        addresses; and    -   receive a result message from the proxy server, indicating which        of the receiving clients have received the message.

In one preferred embodiment, each of the at least one secondaryreceiving headers is indicative of only a single address of a secondaryreceiving client.

In an alternative embodiment, the message includes only a singlesecondary receiving header indicative of addresses of the at least onesecondary receiving clients.

Preferably, the result message received by the client is indicative ofthe proxy server having:

-   -   awaited a response message from each of the receiving clients;        and    -   determined, on the basis of any received response messages,        which of the receiving clients have received the message.

In a preferred form, the communications system is a telecommunicationsnetwork and the message is transmitted from the user equipment to theproxy server over an air interface within the telecommunicationsnetwork. More preferably, the proxy server is an SIP proxy server andthe message is an SIP message.

BRIEF DESCRIPTION OF DRAWING

A preferred embodiment of the invention will now be described, by way ofexample only, with reference to the accompanying drawing, which is aschematic of a system for transmitting a message from a transmittingclient to a primary receiving client and at least one secondaryreceiving client.

DESCRIPTION OF PREFERRED EMBODIMENTS OF THE INVENTION

Referring to the drawing, there is shown a system for enablingtransmission of a message from a transmitting client in the form of afirst mobile telephone 1 (user name “James”) to a primary receivingclient in the form of a second mobile telephone 2 (user name “Ann”) anda secondary receiving client in the form of a computer 3 (user name“Bob”). It will be appreciated that the particular hardware used for thetransmitting, primary and secondary clients is not of particularimportance to the invention. For example, the transmitting client couldbe a computer or other form of communications device.

The embodiment shown is implemented at least in part on a mobiletelecommunications network, configured to allow (amongst other types ofcommunication) IP communication in accordance with SIP standards. Thetelecommunications network includes a proxy server 4, which is locatedon the opposite side of the air interface with respect to the firstmobile telephone 1.

James wishes to send a text message to both Ann and Bob. To do so, themessage is prepared by any normal means (such as typing using an inputkeypad). James then selects Ann and Bob as recipients and sends themessage via the first mobile telephone 1. The software operating on themobile telephone 1 formats the message generally in accordance with theSIP standard, placing the destination address of Ann's phone into aprimary header in the form of the “To:” field specified by SIP. In thiscase, Ann's address is ann@domain.com, where “domain” is the domain nameof Ann's Universal Resource Locator (URL) address. Domain nameaddressing is well known to those in internet communications and so willnot be described herein in detail.

Under the SIP standard, only one name can be used in the “To:” field.Bob, the second recipient, is addressed by means of a secondary headerin the form of a “Secondary-To:” field. As with the “To:” header, only asingle address may be entered in the “Secondary-To” field. In this case,Bob's destination address is bob@domain.com.

A copy of the formatted message is now set out:

MESSAGE sip:ann@domain.com SIP/2.0 Via: SIP/2.0/UDP jamesmob.domain.comFrom: im:james@domain.com To: im:ann@domain.com Secondary-To:im:bob@domain.com Contact: sip:james@jamesmob.domain.com Call-ID:asd88asd77a@jamesmob.domain.com Cseq: 1 MESSAGE Content-Type: text/plainContent-Length: 10 Come Here.

The text message to be delivered is that shown on the last line (“Comehere.”).

The message is sent by the first mobile telephone 1 to the proxy server4 via the air interface. It will be appreciated that the message needonly be sent once across the air interface, notwithstanding the factthat there are two intended recipients, Ann and Bob. However, in theevent that the proxy server does not acknowledge receipt of the message,then the message itself will be retransmitted by the transmitting clientseveral times in accordance with the SIP standard.

The proxy server 4 accepts the message and provides an acknowledgementto the first mobile telephone 1 in the form of a “202 Accepted”response. The proxy server proxies the message according to the originalRequest-URI and checks to ascertain whether there are any“Secondary-To:” headers containing addresses to which the message shouldalso be sent. In the present case, there is one “Secondary-To” headerindicating Bob's address (in the form of Bob's URL). The proxy server 4therefore also proxies the message request to Bob's address, translatingthe “Secondary-To” header to a Request-URI.

It will be noted that the communication to Ann includes Ann's URL as theRequest-URI of the message, whilst the communication to Bob includesBob's URL as the Request-URI of that message. This is coordination isundertaken by the proxy server 4 to ensure that the messages are routedcorrectly in accordance with the SIP standard.

In the example shown, Ann (or specifically, the second mobile telephone2) does not receive the message upon its initial transmission. This canbe for a number of reasons, such as the second mobile telephone beingswitched off or being out of a mobile coverage area. If the presentcase, the proxy server attempts retransmission according to the SIPstandard. Under that standard, such retransmission will be attempted 11times. If no acknowledgment of receipt is received from the secondmobile telephone after the predetermined number of transmit/wait cycles,then the proxy server assumes that transmission has not been successful.

In Bob's case, the message is received upon first transmission, and thecomputer 3 transmits a “200 OK” message back to the proxy serverindicating successful receipt. Again, “200 OK” is an SIP standardresponse.

Once the status of all messages is known, the proxy server prepares aresult message in the form of a NOTIFY message defined under “EventNotification” procedures in SIP. The NOTIFY message is sent because theoriginal message triggered and implicit subscription at the proxyserver. It will be appreciated that a new Event type and a new Contenttype (delivery report and application/delivery report respectively) mustbe defined.

The proxy server 4 prepares the following message:

NOTIFY sip:james@jamesmob.domain.com SIP/2.0 Via: SIP/2.0/UDP domain.comFrom: sip:domain.com To: sip:james@domain.com Call-ID:asd88asd77a@jamesmob.domain.com Cseq: 1 NOTIFY Event: delivery-reportContent-Type: application/delivery-report Content-Length: ...im:ann@domain.com deliveryfailure im:bob@domain.com deliverysuccess

This message is then routed to the first mobile telephone 1, where Jamescan read it. It will be understood that the software running on thefirst mobile telephone 1 can be configured such that it understands theContent-Type application/delivery-report and formats the message formore user-friendly presentation.

It will be appreciated that any form of communication system that uses asuitable form of addressing can be used. The invention has particularadvantages when applied to mobile communications networks, because itreduces the amount of data being sent over the air interface. However,it will be appreciated that the invention can be used in othercommunications networks, either alone or in conjunction with each other.

The preferred embodiment only deals with the case of two recipients, onebeing designated a primary recipient and the other a designatedsecondary recipient. However, it will be appreciated that any number ofsecondary recipients can be added by simply adding additional“Secondary-To:” headers with the address of each intended recipient.However, in the preferred form each “Secondary-To:” header (and the“To:” header, for that matter) can only have a single address associatedwith it, and so each additional intended recipient (or, morespecifically, recipient address) must have its own associated“Secondary-To:” header.

It will be appreciated that in other embodiments, the “Secondary-To:”can include more than one addressee. Typically, this would be done inthe form of a comma or semi-colon separated list. Preferably, if morethan one address is allowed in the “Secondary-To:” header, then only one“Secondary-To:” header is allowed.

The preferred embodiment also used addresses that were all within thesame domain, for the purposes of simplicity. It will be understood thatthe addresses in each of the “To:” and “Secondary-To:” headers need notbe from the same domain, and that the proxy server can be configured toroute messages to other domains in accordance with normal SIP routingprocedures. It will also be appreciated that the particular type ofaddressing used is not critical to implementing the invention.

The use of a modified version of the SIP standard is exemplary only, andany form of instant messaging standard that presently only includes asingle address field (usually designated a “To” field) can be modifiedto operate in this manner.

Also, although the preferred embodiment has been described in terms of aone-off paging context of SIP (modified as described), it can alsooperate within a session established using that protocol (or any otherprotocol within which the present invention can be applied).

It will also be understood that addresses include proxy addresses andother forms of aliases. Routing from the proxy server to the variousclients involved in any transaction using the invention is preferablyundertaken in accordance with standard routing principles. It is thebehaviour of the proxy server to determine the addresses to which themessages (and result messages when used) are sent.

The preferred embodiment deals with text messaging. However, it will beappreciated that any form of data can be sent as a payload.

The embodiment of the present invention has been described in thecontext of third generation (3G) telecommunications systems, such as theUniversal Mobile Telecommunication System (UMTS) 3G system. However, itwill be appreciated that the invention is also applicable to many othercommunication systems and protocols, for both radio and landline basedcommunication and combinations thereof. Examples of other systems,without limiting to these, include the General Packet Radio Service(GPRS), the Enhanced Data rate for GSM Evolution (EDGE) mobile datanetwork, other third generation (3G) telecommunication systems such asthe i-phone or IMT-2000 (International Mobile Telecommunications) andthe Terrestrial Trunked Radio (TETRA) system.

Althought he invention has been described with reference to a specificexample and a number of exemplary modifications, it will be appreciatedthat the invention can be embodied in many other forms without departingfrom the scope of the present invention defined in the appended claims.

1. A method, comprising: receiving a session initiation protocol messagefrom a transmitting client at a session initiation protocol server, thesession initiation protocol message including at least a first headerindicative of an address of a primary receiving client and at least onesecondary header indicative of at least one address of the at least onesecondary receiving client, the primary header being indicative of onlya single primary receiving client address; transmitting the sessioninitiation protocol message from the session initiation protocol serverto the address of primary receiving client and from the sessioninitiation protocol server to the address of at least one secondaryreceiving client; awaiting a delivery message, the delivery messagebeing indicative of successful receipt of the message; determining, onthe basis of any received delivery messages, which of the receivingclients received the message; and sending a delivery report to thetransmitting client indicating which of the receiving clients receivedthe message.
 2. The method according to claim 1, wherein each of the atleast one secondary receiving headers is indicative of only a singleaddress of a secondary receiving client.
 3. The method according toclaim 1, wherein the session initiation protocol message includes only asingle secondary receiving header indicative of addresses of the atleast one secondary receiving clients.
 4. The method according to claim1, further comprising: re-transmitting the session initiation protocolmessage to the address of any of said receiving clients that do not sendthe delivery message within a predetermined time period aftertransmission of the session initiation protocol message.
 5. The methodaccording to claim 4, further comprising: re-transmitting the sessioninitiation protocol message up to a predetermined number of times; andin the event that no delivery message is received, determining that thesession initiation protocol message transmission was not successful,wherein the delivery report indicates those receiving clients that havenot received the session initiation protocol message.
 6. The methodaccording to claim 1, wherein the session initiation protocol message isreceived from the transmitting client over an air interface within atelecommunications network.
 7. An apparatus, comprising: a receiverconfigured to receive a session initiation protocol message from atransmitting client, the session initiation protocol message includingat least a first header indicative of an address of a primary receivingclient and at least one secondary header indicative of at least oneaddress of at least one secondary receiving client, the primary headerbeing indicative of only a single primary receiving client; atransmitter configured to transmit the session initiation protocolmessage to the address of the primary receiving client and to theaddress of at least one secondary receiving client; an awaiting unitconfigured to await a delivery message, the delivery message beingindicative of successful receipt of the session initiation protocolmessage; a client determiner configured to determine, on the basis ofany received delivery messages, which of the receiving clients receivedthe session initiation protocol message; and a delivery reporttransmitter configured to send a delivery report to the transmittingclient indicating which of the receiving clients received the sessioninitiation protocol message.
 8. The apparatus according to claim 7,wherein each of the at least one secondary receiving headers isindicative of only a single address of a secondary receiving client. 9.The apparatus according to claim 7, wherein the session initiationprotocol message includes only a single secondary receiving headerindicative of addresses of the at least one secondary receiving clients.10. The apparatus according to claim 7, further comprising: a messagere-transmitter configured to re-transmit the session initiation protocolmessage to the address of any of said receiving clients that do not sendthe delivery message within a predetermined time period aftertransmission of the session initiation protocol message.
 11. Theapparatus according to claim 10, further comprising: a re-transmitterconfigured to re-transmit the session initiation protocol message up toa predetermined number of times, and in the event that no deliverymessage is received, a determiner configured to determine that thesession initiation protocol message transmission was not successful,wherein the delivery report indicates those receiving clients that havenot received the session initiation protocol message.
 12. The apparatusaccording to claim 7, wherein the session initiation protocol message isreceived from the transmitting client over an air interface within atelecommunications network.
 13. The apparatus as claimed in claim 7,wherein said apparatus comprises a session initiation protocol server.14. A system, comprising: a session initiation protocol servercomprising a receiver configured to receive a session initiationprotocol message from a transmitting client, the session initiationprotocol message including at least a first header indicative of anaddress of a primary receiving client and at least one secondary headerindicative of at least one address of at least one secondary receivingclient, the primary header being indicative of only a single primaryreceiving client, a transmitter configured to transmit the sessioninitiation protocol message to the address of the primary receivingclient and to the address of at least one secondary receiving client, anawaiting unit configured to await a delivery message, the deliverymessage being indicative of successful receipt of the session initiationprotocol message, a client determiner configured to determine, on thebasis of any received delivery messages, which of the receiving clientsreceived the session initiation protocol message, and a delivery reporttransmitter configured to send a delivery report to the transmittingclient indicating which of the receiving clients received the sessioninitiation protocol message.
 15. An apparatus, comprising: a transmitterconfigured to send a session initiation protocol message to a sessioninitiation protocol server, the session initiation protocol messageincluding at least a first header indicative of an address of a primaryreceiving client and at least one secondary header indicative of atleast one address of at least one secondary receiving client, theprimary header being indicative of only a single primary receivingclient; and a receiver configured to receive a delivery report from thesession initiation protocol server, indicating which of the receivingclients received the session initiation protocol message.
 16. Theapparatus according to claim 15, wherein each of the at least onesecondary receiving headers is indicative of only a single address of asecondary receiving client.
 17. The apparatus according to claim 15,wherein the session initiation protocol message includes only a singlesecondary receiving header indicative of addresses of the at least onesecondary receiving clients.
 18. The apparatus according to claim 15,wherein the delivery report is indicative of the session initiationprotocol server having awaited a delivery message from each of thereceiving clients, and determined, on the basis of any of said receiveddelivery messages, which of the receiving clients received the sessioninitiation protocol message.
 19. The apparatus according to claim 15,wherein the session initiation protocol message is transmitted from theapparatus to the session initiation protocol server over an airinterface within a telecommunications network.
 20. The apparatusaccording to claim 15, wherein the server is a session initiationprotocol.
 21. An apparatus, comprising: means for receiving a sessioninitiation protocol message from a transmitting client, the sessioninitiation protocol message including at least a first header indicativeof an address of a primary receiving client and at least one secondaryheader indicative of at least one address of at least one secondaryreceiving client, the primary header being indicative of only a singleprimary receiving client; means for transmitting the session initiationprotocol message to the address of the primary receiving client and tothe address of at least one secondary receiving client; means forawaiting a delivery message, the delivery message being indicative ofsuccessful receipt of the session initiation protocol message; means fordetermining, on the basis of any received delivery messages, which ofthe receiving clients received the session initiation protocol message;and means for sending a delivery report to the transmitting clientindicating which of the receiving clients received the sessioninitiation protocol message.
 22. An apparatus, comprising: means forsending a session initiation protocol message to a server, the sessioninitiation protocol message including at least a first header indicativeof an address of a primary receiving client and at least one secondaryheader indicative of at least one address of at least one secondaryreceiving client, the secondary header being indicative of only a singleone of the at least one address; and means for receiving a deliveryreport from the server indicating which of the receiving clientsreceived the session initiation protocol message.
 23. The apparatus asclaimed in claim 1, wherein said apparatus comprises user equipment. 24.A method, comprising: sending a session initiation protocol message to asession initiation protocol server, the message including at least afirst header indicative of an address of a primary receiving client andat least one secondary header indicative of at least one address of atleast one secondary receiving client, the primary header beingindicative of only a single primary receiving client; and receiving adelivery report from the session initiation protocol server, indicatingwhich of the receiving clients received the session initiation protocolmessage.
 25. The method according to claim 24, wherein each of the atleast one secondary receiving headers is indicative of only a singleaddress of a secondary receiving client.
 26. The method according toclaim 24, wherein the session initiation protocol message includes onlya single secondary receiving header indicative of addresses of the atleast one secondary receiving clients.
 27. The method according to claim24, wherein the delivery report is indicative of the session initiationprotocol server having awaited a delivery message from each of thereceiving clients, and determined, on the basis of any of said receiveddelivery messages, which of the receiving clients received the message.28. The method according to claim 24, wherein the sending furthercomprises sending the message to the session initiation protocol serverover an air interface within a telecommunications network.